package org.raymond.iworks.study.basic.designpattern.state.money;

/**
 * @author raymond
 * @version V1.0
 * @Description: TODO
 */
public abstract class AbstractState implements State{
    protected static final RuntimeException EXCEPTION = new RuntimeException("操作流程不允许");
    @Override
    public void checkEvent(Context context) {
        throw EXCEPTION;
    }
    @Override
    public void checkFailEvent(Context context) {
        throw EXCEPTION;
    }
    @Override
    public void makePriceEvent(Context context) {
        throw EXCEPTION;
    }
    @Override
    public void acceptOrderEvent(Context context) {
        throw EXCEPTION;
    }
    @Override
    public void noPeopleAcceptEvent(Context context) {
        throw EXCEPTION;
    }
    @Override
    public void payOrderEvent(Context context) {
        throw EXCEPTION;
    }
    @Override
    public void orderFailureEvent(Context context) {
        throw EXCEPTION;
    }
    @Override
    public void feedbackEvent(Context context) {
        throw EXCEPTION;
    }
    public abstract String getCurrentState();
}
